package com.xt.LibaryDeskManager.service;

import com.xt.LibaryDeskManager.dto.TeacherDto;
import com.xt.LibaryDeskManager.dto.UpdateSeatTeacher;
import com.xt.LibaryDeskManager.dto.UserMessage;
import com.xt.LibaryDeskManager.vo.LoginVo;
import com.xt.LibaryDeskManager.vo.TeacherVo;
import com.xt.LibaryDeskManager.vo.UpdateVo;

import java.util.List;

public interface TeacherService {
    /**
     * 根据登录的信息查找教师
     * @param loginVo
     * @return
     */
    UserMessage selectByLoginVo(LoginVo loginVo)throws Exception;

    /**
     * 更新教师信息
     * @param updateVo
     * @throws Exception
     */
    int updateTeacher(UpdateVo updateVo)throws  Exception;

    /**
     * 获得教师总数
     * @return
     * @throws Exception
     */
    int getCount() throws Exception;

    /**
     * 获得教师基本信息 工号和姓名
     * @return
     * @throws Exception
     */
    List<UpdateSeatTeacher> getTeacherNoName() throws Exception;

    /**
     * 获得所有教师信息
     * @return
     * @throws Exception
     */
    List<TeacherDto> getAllTeacher()throws Exception;

    /**
     * 更新教师信息
     * @param teacherVo
     * @throws Exception
     */
    int updateTeacher(TeacherVo teacherVo) throws Exception;

    /**
     * 根据工号删除教师
     * @param teacherNo
     * @return
     * @throws Exception
     */
    int deleteTeacher(int teacherNo)throws Exception;

    /**
     * 添加教师信息
     * @param teacherVo
     * @return
     * @throws Exception
     */
    int addTeacher(TeacherVo teacherVo)throws Exception;
}
